Web API
网络应用程序接口
Web API是网络应用程序接口。包含了广泛的功能,网络应用通过API接口,可以实现存储服务、消息服务、计算服务等能力,利用这些能力可以进行开发出强大功能的web应用。
术语简介
今天的web计算平台包含了广泛的功能,其中的大部分均可以通过API(应用程序编程接口)访问。从简单的社会书签服务del.icio.us,到复杂得多的amazon s3'全虚拟化存储平台,想想能用这些web api做点什么,真是惊人。
web平台归为6个基本设施,并简要概述些相关产品。其间的线索是这些产品都提供了API,这意味者他们本身可以被其他服务整合。
存储服务:存储服务关注抽象化和虚拟化存储。这个领域的领头羊是amazon s3,在我的article in web 2.0 journal中对其曾有较深入的探讨。对开发者而言,S3提供了极其精简抽象的如哈希表之类的API,允许你轻松存取信息。另一个有意思的服务是openemy,它提供了类似于文件系统接口的api,但增加了给文件标签的能力。今年早些时候,TechCrunch剖析了其他一些在线存储服务。但至今我们还没看到传说中颠覆性的存储服务GDrive(来自google)和LiveDrive(来自微软),他们很大可能都会提供api。
消息服务:消息服务在概念上类似于传统意义上的中间件。由于技术和商业上的复杂性,它们还没有被大规模开发。短期内可见的基于web的通讯服务是Amazon Simple Queue Service。这个服务使得任意应用间安全和可扩展的基于队列的通讯更为便利。
计算服务:目前还没有一个一般的可以通过api访问的web计算服务黑盒,但有不少技术指向这个方向。一个是alexavertical search platform,在下面的搜索服务小节会提及更多,第二个是网格计算,比如 sungrid,datasynapse's gridserver或者platform's symphony。在API里封装任意的计算任务是个相当具挑战性的任务,也许还要很多年这种服务才会广泛流行。
信息服务:信息服务提供海量特定的信息。包括像Google Maps API的地理数据,像Amazon E-Commerce,Amazon historcal Pricing Services的产品数据和最新发布的Yahoo!answer's API登。这些服务的共同点是它们都提供简单的API来访问海量数据,可能催生孤立信息间的不可预知的交叉应用。
搜索服务:因为搜索在web领域的基础和统治地位,搜索服务构成了新的web基础架构的关键部分。Google searchapi是较早的如今已成典型的搜索抽象机制。另一个例子是alexa search platform,它的设计带动了一系列挑战google地位的垂直搜索引擎。相当有意思的是从技术上看,alexa search platform更多表现为一个计算服务,不过局限在搜索领域而已。这意味者其他服务的可能性,比如排序服务或者数据转换服务。
web2.0服务:最后一类宽泛的叫它们web2.0服务,名字不一定切题,但它包含诸如del.icio.us,flickrbasecamp。John Musser在Programmableweb中编译了一些非常有影响的api。这些特定的服务将来会成为上述其他服务的使用者,但当前它们的价值更多体现在它们提供了清晰的,特定的,简单的api来查看和改变大家拥有的信息。尽管它们看起来更像分子而非原子,但在当今的web领域里,它们是如此基本的服务,所以我把它们视为构成成分还是很有意义的。
参考资料
最新修订时间:2023-06-07 10:44
目录
概述
参考资料